package com.hhit.bigscreenbackmanage.service.aqgl;

import cn.hutool.json.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageInfo;
import com.hhit.bigscreenbackmanage.entity.aqgl.TJjResourceDynamicRiskInfo;
import com.hhit.bigscreenbackmanage.entity.aqgl.TJjResourcePeakPersonNum;
import com.hhit.bigscreenbackmanage.entity.aqgl.TTestZyp;

import java.util.List;
import java.util.Map;

public interface AqglStatisticsService {

    /**
     * @Description: 获取当日风险管控
     * @Author: qianchengcheng
     * @Date: 2021/7/26 19:30
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getDayRiskManagement(String cityName) throws Exception;

    /**
     * @Description: 获取(每日)作业票数据
     * @Author: qianchengcheng
     * @Date: 2021/7/26 20:46
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getDayWorkTickets(String cityName) throws Exception;



    /**
     * @Description: 获取日一本账
     * @Author: qianchengcheng
     * @Date: 2021/7/27 13:02
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getDayAnAccount(String cityName) throws Exception;

    /**
     * @Description: 获取当日人员管控
     * @Author: qianchengcheng
     * @Date: 2021/7/27 16:42
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getDayPersonControl(String cityName) throws Exception;

    /**
     * @Description: 获取日报
     * @Author: qianchengcheng
     * @Date: 2021/7/27 20:16
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getDailyPaper(String cityName) throws Exception;

    /**
     * @Description: 获取监督检查情况
     * @Author: qianchengcheng
     * @Date: 2021/7/28 9:23
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getSupervisionCheckSituation(String cityName) throws Exception;

    /**
     * @Description: 获取月度风险完成情况
     * @Author: qianchengcheng
     * @Date: 2021/7/28 11:06
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getMonthlyRiskCompletion(String cityName) throws Exception;


    /**
     * @Description: 获取每日播报
     * @Author: qianchengcheng
     * @Date: 2021/7/28 14:22
     * @Param: [cityName]
     * @Return: java.util.Map<java.lang.String,java.lang.Object>
     **/
    Map<String,Object> getDailyReport(String cityName) throws Exception;

/**********************************根据e安全提供接口获取数据**********************************/

    /**
     * 获取当日风险管控
     * @param dataTime
     * @return
     * @throws Exception
     */
    Map<String,Object> getDayRiskManagementTj(String dataTime) throws Exception;

    /**
     * 获取当日风险管控明细
     * @param json
     * @return
     * @throws Exception
     */
    PageInfo<TJjResourceDynamicRiskInfo> getDayRiskManagementDetail(JSONObject json) throws Exception;

    /**
     * 获取(每日)作业票数据
     * @param dataTime
     * @return
     * @throws Exception
     */
    JSONObject getDayWorkTicketsTj(String dataTime) throws Exception;

    /**
     *获取(每日)作业票明细
     * @param json
     * @return
     * @throws Exception
     */
    PageInfo<TTestZyp> getDayWorkTicketsDetail(JSONObject json) throws Exception;

    /**
     * 分页查询当日人员管控明细
     * @param json
     * @return
     * @throws Exception
     */
    PageInfo<TJjResourcePeakPersonNum> getDayPersonPageInfo(JSONObject json) throws Exception;

    /**
     * 获取当日人员管控
     * @param json
     * @return
     * @throws Exception
     */
    Map<String, Object> getDayPersonControlTj(JSONObject json) throws Exception;

    /**
     * 获取月度风险完成情况
     * @param dataTime
     * @return
     * @throws Exception
     */
    JSONArray getMonthlyRiskCompletionTj(String dataTime) throws Exception;

    /**
     * 当日风险forGis
     * @param jsonObject
     * @return
     */
    List<TJjResourceDynamicRiskInfo> getDayRiskForGis(JSONObject jsonObject) throws  Exception;

    /**
     * 获取当日风险在施工程明细
     * @param json
     * @return
     * @throws Exception
     */
    PageInfo<TJjResourceDynamicRiskInfo> getDayRiskInBuildingDetail(JSONObject json) throws Exception;
}
